const { Sequelize, DataTypes } = require('sequelize');
const config = require('../config/config.json'); // 引入配置文件
const Article = require('./article'); // 导入 Article 模型
const Users = require('./users') // 导入 Users 模型

// 根据当前环境获取配置
const env = process.env.NODE_ENV || 'development';
const dbConfig = config[env];

// 初始化 Sequelize 实例
const sequelize = new Sequelize(
  dbConfig.database, // 数据库名称
  dbConfig.username, // 用户名
  dbConfig.password, // 密码
  {
    host: dbConfig.host, // 主机地址
    dialect: dbConfig.dialect, // 数据库类型
  }
);

/* 模型初始化 */
Article.init(sequelize)
Users.init(sequelize)

// 定义模型关联（如果需要）
// Article.associate({ Article });

// 导出包含所有模型的对象
const db = {
  Article,
  Users,
  sequelize, // 导出 Sequelize 实例
  Sequelize, // 导出 Sequelize 类
};

module.exports = db;